const { createStore } = require("redux")
// 初始数据
const initState = {
  name: "wang",
  age: 10
}

// @params {state} 原数据值， @params {action} 派发更新的值和对应的函数
function reducer(state = initState, action) {
  switch (action.type) {
    case "changeNameAction":
      return { ...state, name: action.name } // 必须把store创立新的地址 视图才会更改
    case "changeAgeAction":
      return { ...state, age: state.age + action.age }
  }
  return state // 这是因为一开始要直接返回的initState
}

const store = createStore(reducer) // createStore函数内部接受reducer函数

module.exports = store
